package sun.cn.common.cacheDto.dao;

/**
 * 
 * @author sunlingao
 * @title
 * @date 2017年7月8日
 * @version
 */
public interface BaseDao<T> {
	
	/**
	 * 
	 * @author sunlingao
	 * @date 2017年7月8日
	 * @version
	 * @param t
	 * @return
	 */
	public boolean save(T t);
	
	/**
	 * 保存并返回实体
	 * @author sunlingao
	 * @date 2017年8月3日
	 * @version
	 * @param t
	 * @return
	 */
	public T saveReturnObj(T t);
	
    /**
     * 根据id查询实体
     *
     * @param t
     * @return
     * @author sunlingao
     * @date 2017年7月6日
     * @version
     */
    public T getEntityById(T t);
    
    /**
     * 更新实体
     * @author sunlingao
     * @date 2017年7月8日
     * @version
     * @param t
     * @return
     */
    public boolean update(T t);
    
    /**
     * 根据一个或多个参数进行删除
     * @author sunlingao
     * @date 2017年7月8日
     * @version
     * @param params
     * @return
     */
    public boolean delete(Object... params);

}
